-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Source ClickHouse: add custom jdbc params #17031
Source ClickHouse: add custom jdbc params #17031
Conversation
NOTE
|
/test connector=connectors/source-clickhouse
Build PassedTest summary info:
|
/test connector=connectors/source-clickhouse-strict-encrypt
Build PassedTest summary info:
|
NOTE
|
NOTE
|
Please add test to describe jdbc url with ssl and additional params |
NOTE
|
NOTE
|
NOTE
|
NOTE
|
params.add(SSL_MODE); | ||
} | ||
if (isAdditionalParamsExists) { | ||
params.add(config.get(JdbcUtils.JDBC_URL_PARAMS_KEY).asText()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what will happen if the user puts "sslmode=strict" into jdbc_url_params
field? Specifically, will the connection continue to work and what the effective SSL mode of the connection will be in this case?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems parameters on clickhouse side puts in map and second parameter with the same key will replace first parameter value, so param passed via jdbc_param_url will have higher priority as far as we firstly set sslmode=none implicitly in code. As far as clickhouse source supports ssl just with none mode and no certificates are created on server, if user puts "sslmode=strict", the following error will be shown: "unable to find valid certification path to requested target", as far as user didn't specify any certificate. @grishick
import java.util.List; | ||
import java.util.Map; | ||
import java.util.Set; | ||
import java.util.*; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please replace star import
import java.util.stream.Collectors; | ||
import org.slf4j.Logger; | ||
import org.slf4j.LoggerFactory; | ||
|
||
import static io.airbyte.db.jdbc.JdbcUtils.AMPERSAND; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
seems like this import is not used in this class
import static java.time.temporal.ChronoUnit.SECONDS; | ||
import static org.junit.jupiter.api.Assertions.*; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please replace star import
NOTE
|
NOTE
|
/test connector=connectors/source-clickhouse-strict-encrypt
Build PassedTest summary info:
|
/test connector=connectors/source-clickhouse
Build PassedTest summary info:
|
…-clickhouse-custom-parameters
NOTE
|
/publish connector=connectors/source-clickhouse
if you have connectors that successfully published but failed definition generation, follow step 4 here |
/publish connector=connectors/source-clickhouse-strict-encrypt
if you have connectors that successfully published but failed definition generation, follow step 4 here |
* Source clickhouse: add jdbc params * Source clickhouse: add jdbc params * Source clickhouse: add jdbc params * Source clickhouse: updated tests * Source clickhouse: format * Source clickhouse: format * Source clickhouse: format * Source clickhouse: format * Source clickhouse: bump version * auto-bump connector version [ci skip] Co-authored-by: Octavia Squidington III <[email protected]>
* Source clickhouse: add jdbc params * Source clickhouse: add jdbc params * Source clickhouse: add jdbc params * Source clickhouse: updated tests * Source clickhouse: format * Source clickhouse: format * Source clickhouse: format * Source clickhouse: format * Source clickhouse: bump version * auto-bump connector version [ci skip] Co-authored-by: Octavia Squidington III <[email protected]>
What
Describe what the change is solving
It helps to add screenshots if it affects the frontend.
How
Describe the solution
Recommended reading order
x.java
y.python
🚨 User Impact 🚨
Are there any breaking changes? What is the end result perceived by the user? If yes, please merge this PR with the 🚨🚨 emoji so changelog authors can further highlight this if needed.
Pre-merge Checklist
Expand the relevant checklist and delete the others.
New Connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
bootstrap.md
. See description and examplesdocs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampledocs/integrations/README.md
airbyte-integrations/builds.md
Airbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing/publish
command described hereUpdating a connector
Community member or Airbyter
airbyte_secret
./gradlew :airbyte-integrations:connectors:<name>:integrationTest
.README.md
bootstrap.md
. See description and examplesdocs/integrations/<source or destination>/<name>.md
including changelog. See changelog exampleAirbyter
If this is a community PR, the Airbyte engineer reviewing this PR is responsible for the below items.
/test connector=connectors/<name>
command is passing/publish
command described hereConnector Generator
-scaffold
in their name) have been updated with the latest scaffold by running./gradlew :airbyte-integrations:connector-templates:generator:testScaffoldTemplates
then checking in your changesTests
Unit
Put your unit tests output here.
Integration
Put your integration tests output here.
Acceptance
Put your acceptance tests output here.